Unix 系统每个分区都有自己的文件系统树. 当计算机上有多余一个的文件系统时, Unix 提供一种方法将这些数整合成一颗更大的树

每棵树都有一个根目录. 一个文件系统被命名为根文件系统, 这棵树的顶端是整棵树的真 正的根;另一个文件系统则被附加到根文件系统的某个子目录上. 在内部, 内核在根文件 系统将一个目录作为指针, 指向另一个文件系统的根, 这两两个文件系统就联系起来了.

装载点

Unix 系统中, 通过挂载文件系统(to mount a file system)将一个文件系统嵌入到已有的 系统以获得某些支持, 子树的根目录被嵌入到根文件系统的一个目录中, 子树所在的目录 被称作第二个系统的挂载点(mount point)

多重 i-node 号和设备交叉链接

不同的文件系统可能会拥有相同的 i-node 号指向不同的文件, 所以 link 拒绝创建跨越设备的链接, rename 拒绝在不同的文件系统间进行 i-node 号转移

符号链接

硬链接(hard links)是将目录链接到树的指针, 硬链接同时也是将文件名和文件本身链接起来的指针.

硬链接不能指向其他系统的 i-node, 即使根也不能生成到目录的链接.

Unix 支持另一种形式的链接: 符号链接. 符号链接通过名字引用文件, 而不是 i-node 号

函数 stat 对符号链接的调用返回关于链接的信息, 而不是关于原始文件的.

符号链接可能跨越文件系统, 也可以指向目录.

系统调用 symlink 用户创建符号链接. 系统调用 readlink 用于获取原始文件名字. lstat 用于获取原始的文件信息. unlink link 也可以作用与符号链接